Memory controller

ABSTRACT

A memory controller for writing data in a first semiconductor memory including a plurality of memory cells having series-connected current paths and charge storage layers includes a host interface which configured to be receivable of first data from a host apparatus, a second semiconductor memory which temporarily holds second data, and an arithmetic unit which generates the second data in accordance with the state of the first semiconductor memory, temporarily holds the second data in the second semiconductor memory, and writes the first and second data in the first semiconductor memory. When writing the second data, the arithmetic unit does not select a word line adjacent to a select gate line, and selects a word line not adjacent to the select gate line.

CROSS-REFERENCE TO RELATED APPLICATIONS

This Application is a Continuation of U.S. application Ser. No.11/776,037 filed Jul. 11, 2007.

This application is based upon and claims the benefit of priority fromprior Japanese Patent Application No. 2006-194804, filed Jul. 14, 2006,the entire contents of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a memory controller, e.g., a memorycontroller for controlling the operation of a nonvolatile semiconductormemory chip.

2. Description of the Related Art

With the recent rapid spread of digital cameras and portable audioplayers, demands for large-capacity nonvolatile semiconductor memoriesare increasing, and NAND flash memories (to be also simply referred toas flash memories hereinafter) are widely used as the nonvolatilesemiconductor memories.

In the NAND flash memory, data is erased from a plurality of memorycells at once. This erase unit will be called a memory blockhereinafter. The memory block includes a plurality of NAND cells. EachNAND cell has a selection transistor ST1 having a drain connected to abit line, a selection transistor ST2 having a source connected to asource line, and a plurality of memory cell transistors MT havingcurrent paths connected in series between the source of the selectiontransistor ST1 and the drain of the selection transistor ST2.

In the conventional NAND flash memory described above, data is writtenby selecting a certain word line. This technique is described in, e.g.,“Jpn. Pat. Appln. KOKAI Publication No. 2005-285184” or “SmartMedia™(registered trademark) Physical Format Specification Ver 1.21, issued bySSFDC Forum Technical Meeting, May 19, 1999”. However, this techniquehas the problem that the reliability of the system deteriorates due tothe loss of important data.

BRIEF SUMMARY OF THE INVENTION

A memory controller according to the first aspect of the presentinvention which writes data in a first semiconductor memory including aplurality of memory cells, a first selection transistor, a secondselection transistor, a first select gate line, a second select gateline and a plurality of word lines, the plurality of memory cells havingcurrent paths connected in series between a source of the firstselection transistor and a drain of the second selection transistor,each of the plurality of memory cells having a control gate and a chargestorage layer, the first and second select gate lines respectivelyconnected to gates of the first and second selection transistors, andthe plurality of word lines respectively connected to the control gates,the memory controller comprising a host interface which is configured tobe connectable to a host apparatus and to be receivable of first datafrom the host apparatus, a second semiconductor memory which temporarilyholds second data, and an arithmetic unit which generates the seconddata in accordance with a state of the first semiconductor memory,temporarily holds the second data in the second semiconductor memory,and writes, in the first semiconductor memory, the first data from thehost interface and the second data held in the second semiconductormemory, wherein when writing the second data, the arithmetic unit doesnot select the word lines adjacent to the first select gate line and thesecond select gate line, and selects the word line not adjacent to thefirst select gate line and the second select gate line.

A memory controller according to the second aspect of the presentinvention which writes data in a first semiconductor memory including aplurality of memory cells, a first selection transistor, a secondselection transistor, a first select gate line, a second select gateline and a plurality of word lines, the plurality of memory cells havingcurrent paths connected in series between a source of the firstselection transistor and a drain of the second selection transistor,each of the plurality of memory cells having a control gate and a chargestorage layer and being configured to hold data having at least twobits, the first and second select gate lines respectively connected togates of the first and second selection transistors, and the pluralityof word lines respectively connected to the control gates, the memorycontroller comprising a host interface which is configured to beconnectable to a host apparatus and to be receivable of first data fromthe host apparatus, a second semiconductor memory which temporarilyholds second data, and an arithmetic unit which generates the seconddata in accordance with a state of the first semiconductor memory,temporarily holds the second data in the second semiconductor memory,and writes, in the first semiconductor memory, the first data from thehost interface and the second data held in the second semiconductormemory, wherein when writing the second data, the arithmetic unit writesone-bit data in the memory cells connected to the word lines adjacent tothe first select gate line and the second select gate line, and writesthe data having not less than two bits in the memory cell connected tothe word line not adjacent to the first select gate line and the secondselect gate line.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING

FIG. 1 is a block diagram of a memory system according to the firstembodiment of the present invention;

FIG. 2 is a view showing the assignment of signals to signal pins in amemory card according to the first embodiment of the present invention;

FIG. 3 is a block diagram of a card controller of the memory cardaccording to the first embodiment of the present invention;

FIG. 4 is a block diagram of a flash memory according to the firstembodiment of the present invention;

FIG. 5 is a circuit diagram of a memory block of the flash memoryaccording to the first embodiment of the present invention;

FIG. 6 is a conceptual view of system information of the card controlleraccording to the first embodiment of the present invention;

FIG. 7 is a flowchart showing the processing of a write operation of thecard controller according to the first embodiment of the presentinvention;

FIG. 8 is a circuit diagram of the memory block of the flash memoryaccording to the first embodiment of the present invention, which showsthe way the system information is written;

FIG. 9 is a graph showing the threshold distribution of a flash memoryaccording to the second embodiment of the present invention;

FIG. 10 is a flowchart showing the processing of a write operation of acard controller according to the second embodiment of the presentinvention;

FIG. 11 is a circuit diagram of a memory block of the flash memoryaccording to the second embodiment of the present invention, which showsthe way the system information is written;

FIG. 12 is a flowchart showing the processing of a write operation of acard controller according to a modification of the second embodiment ofthe present invention;

FIG. 13 is a flowchart showing the processing of a write operation of acard controller according to the third embodiment of the presentinvention;

FIG. 14 is a circuit diagram of a memory block of a flash memoryaccording to the third embodiment of the present invention, which showsthe way the system information is written;

FIG. 15 is a flowchart showing the processing of a write operation of acard controller according to the fourth embodiment of the presentinvention;

FIG. 16 is a circuit diagram of a memory block of a flash memoryaccording to the fourth embodiment of the present invention, which showsthe way the system information is written;

FIG. 17 is a flowchart showing the processing of a write operation of acard controller according to the fifth embodiment of the presentinvention;

FIG. 18 is a conceptual view of an error table of the card controlleraccording to the fifth embodiment of the present invention;

FIGS. 19A and 19B are block diagrams of a memory cell array of a flashmemory according to the fifth embodiment of the present invention, whichillustrate the arrangement of memory blocks;

FIG. 20 is a circuit diagram of a memory block of a flash memoryaccording to the first modification of the first to fifth embodiments ofthe present invention, which shows the way the system information iswritten;

FIG. 21 is a circuit diagram of a NAND cell of a flash memory accordingto the second modification of the first to fifth embodiments of thepresent invention;

FIG. 22 is a circuit diagram of a NAND cell of a flash memory accordingto the third modification of the first to fifth embodiments of thepresent invention; and

FIG. 23 is a circuit diagram of a memory cell array of a TC parallelunit series-connected ferroelectric memory.

DETAILED DESCRIPTION OF THE INVENTION

Embodiments of the present invention will be explained below withreference to the accompanying drawing. In the following explanation, thesame reference numerals denote the same parts throughout the drawing.

First Embodiment

A memory controller according to the first embodiment of the presentinvention will be explained below with reference to FIG. 1. FIG. 1 is ablock diagram of a memory system according to this embodiment.

As shown in FIG. 1, this memory system comprises a memory card 1 andhost apparatus 2. The host apparatus 2 has hardware and software foraccessing the memory card 1 connected via a bus interface 14. The memorycard 1 operates by receiving power supply when connected to the hostapparatus 2, and performs processing corresponding to the access fromthe host apparatus 2.

The memory card 1 exchanges information with the host apparatus 2 viathe bus interface 14. The memory card 1 includes a NAND flash memorychip (to be also simply referred to as a NAND flash memory or flashmemory hereinafter) 11, a card controller 12 for controlling the flashmemory chip 11, and signal pins (first to ninth pins) 13.

The signal pins 13 are electrically connected to the card controller 12.FIG. 2 shows an example of the assignment of signals to the first toninth pins of the signal pins 13. FIG. 2 is a table showing the first toninth pins and signals assigned to these pins.

Data 0, data 1, data 2, and data 3 are respectively assigned to theseventh, eighth, ninth, and first pins. The first pin is also assignedto a card detection signal. The second pin is assigned to a command. Thethird and sixth pins are assigned to a ground potential Vss. The fourthpin is assigned to a power supply potential Vdd. The fifth pin isassigned to a clock signal.

The memory card 1 can be inserted into and removed from a slot formed inthe host apparatus 2. A host controller (not shown) of the hostapparatus 2 communicates various signals and data with the cardcontroller 12 in the memory card 1 via the first to ninth pins. Whenwriting data in the memory card 1, for example, the host controllersends a write command as a serial signal to the card controller 12 viathe second pin. The card controller 12 receives this write command inputto the second pin, in response to the clock signal supplied to the fifthpin.

As described above, the write command is serially input to the cardcontroller 12 by using only the second pin. As shown in FIG. 2, thesecond pin assigned to command input is positioned between the first pinfor data 3 and the third pin for the ground potential Vss. The hostcontroller in the host apparatus 2 and the memory card 1 communicatewith each other by using the signal pins 13 and the bus interface 14corresponding to them.

On the other hand, the flash memory 11 and card controller 12communicate with each other by using a NAND flash memory interface.Although not shown, therefore, the flash memory 11 and card controller12 are connected by, e.g., 8-bit input/output (I/O) lines.

When writing data in the flash memory 11, for example, the cardcontroller 12 sequentially inputs a data input command 80H, columnaddress, page address, data, and program command 10H to the flash memory11 via the I/O lines. “H” of the command 80H indicates a hexadecimalnumber. In practice, an 8-bit signal “10000000” is supplied parallel tothe 8-bit I/O lines. That is, this NAND flash memory interface suppliesa multi-bit command parallel.

Also, the NAND flash memory interface communicates commands and datawith the flash memory 11 by using the same I/O lines. As describedabove, the interface for communication between the host controller inthe host apparatus 2 and the memory card 1 differs from the interfacefor communication between the flash memory 11 and card controller 12.

The internal arrangement of the card controller of the memory card 1shown in FIG. 1 will be explained below with reference to FIG. 3. FIG. 3is a block diagram of the card controller.

The card controller 12 manages the internal physical state (e.g., whichphysical block address contains what number of logical sector addressdata, or which block is erasable) of the flash memory 11. The cardcontroller 12 has a host interface module 21, MPU (Micro ProcessingUnit) 22, flash controller 23, ROM (Read-Only Memory) 24, RAM (RandomAccess Memory) 25, and buffer 26.

The host interface module 21 interfaces the card controller 12 and hostapparatus 2 with each other.

The MPU 22 controls the overall operation of the memory card 1. Whenpower is supplied to the memory card 1, the MPU 22 reads out firmware (acontrol program) stored in the ROM 24 onto the RAM 25 and executespredetermined processing, thereby forming various tables on the RAM 25.One of these tables is system information. The RAM 25 is, e.g., avolatile semiconductor memory such as an SRAM. It is a matter of coursethat the RAM 25 may also be a nonvolatile memory. The system informationrelates to the NAND flash memory 11, and the details will be describedlater. Also, the MPU 22 receives a write command, read command, anderase command from the host apparatus 2, executes predeterminedprocessing on the flash memory 11, and controls data transfer via thebuffer 26.

The ROM 24 stores the control program controlled by the MPU 22. The RAM25 is used as a work area of the MPU 22, and stores the control programand various tables. The flash controller 23 interfaces the cardcontroller 12 and flash memory 11 with each other.

The buffer 26 temporarily stores a predetermined amount of data (e.g.,one page) when writing data transmitted from the host apparatus 2 intothe flash memory 11, and temporarily stores a predetermined amount ofdata when transmitting data read out from the flash memory 11 to thehost apparatus 2.

The internal arrangement of the NAND flash memory 11 will be brieflyexplained below. FIG. 4 is a block diagram of the NAND flash memory 11.As shown in FIG. 4, the NAND flash memory 11 comprises a memory cellarray 30, page buffer 31, and row decoder 32.

The memory cell array 30 includes memory blocks BLK0 to BLKn (n is anatural number of 1 or more). Note that the memory blocks BLK0 to BLKnwill also be simply referred to as memory blocks BLK hereinafter. Notealso that data erase is performed for each memory block BLK. That is,data in one memory block BLK is erased at once. Each memory block BLKincludes a plurality of memory cell transistors. The memory block BLKalso has word lines WL0, WL1, . . . (to be referred to as word lines WLhereinafter), and bit lines BL0, BL1, . . . (to be referred to as bitlines BL hereinafter) perpendicular to the word lines WL. Memory celltransistors on the same row are connected together to the same wordline. Memory cell transistors in the same column are connected, as setseach including a plurality of memory cell transistors, to the bit linesBL. Note that data write and read are performed for each set including aplurality of memory cell transistors, and this memory cell transistorset is called a page. When reading out and writing data, a certain worldline WL is selected by a row address, and a certain bit line BL isselected by a column address. In the example shown in FIG. 4, each pageof the flash memory 11 has 2,112 bytes (512-byte data storageportion×4+10-byte redundancy portion×4+24-byte management data storageportion), and each memory block BLK contains, e.g., 128 pages.

The page buffer 31 performs data input/output with respect to the flashmemory 11, and temporarily holds data. The page buffer 31 can hold adata size of 2,112 bytes (2,048 bytes +64 bytes) that is the same as thepage size of each memory block BLK. When writing data, for example, thepage buffer 31 executes the data input/output process with respect tothe flash memory 11, for each page corresponding to its own storagecapacity.

When writing and reading out data, the row decoder 32 selects a certainword line WL.

Details of the arrangement of the memory block will be explained belowwith reference to FIG. 5. FIG. 5 is an equivalent circuit diagram of acertain memory block BLK.

As shown in FIG. 5, the memory block BLK comprises (m+1) NAND cells (mis a natural number of 1 or more) arranged in the direction of the wordlines WL. Each NAND cell comprises selection transistors ST1 and ST2,and 32 memory cell transistors MT. The selection transistors ST1 ofthese NAND cells have drains connected to bit lines BL0 to BLm, andgates connected together to a select gate line SGD. The selectiontransistors ST2 have sources connected to source lines SL, and gatesconnected together to a select gate line SGS.

Each memory cell transistor MT is a MOS transistor having a stacked gateformed on a semiconductor substrate via a gate insulating film. Thestacked gate includes a charge storage layer (floating gate) formed onthe gate insulating film, and a control gate formed on the chargestorage layer via an inter-gate insulating film. In each NAND cell, the32 memory cell transistors MT are arranged such that their current pathsare connected in series, between the source of the selection transistorST1 and the drain of the selection transistor ST2. The control gates ofthe memory cell transistors MT are connected to word lines WL0 to WL31in order from the memory cell transistor MT closest to the drain side.Accordingly, the drain of the memory cell transistor MT connected to theword line WL0 is connected to the source of the selection transistorST1, and the source of the memory cell transistor MT connected to theword line WL31 is connected to the drain of the selection transistorST2.

The word lines WL0 to WL31 connect the control gates of the memory celltransistors MT together between the NAND cells in the memory block. Thatis, the control gates of the memory cell transistors MT on the same rowin the memory block BLK are connected to the same word line WL. Also,the bit lines BL0 to BLm connect the drains of the selection transistorsST1 together between the memory blocks. That is, the NAND cells in thesame column in a plurality of memory blocks BLK are connected to thesame bit line BL.

The system information shown in FIG. 3 will be explained below withreference to FIG. 6. FIG. 6 is a conceptual view showing an example ofthe system information held in the RAM 25.

As shown in FIG. 6, the system information contains an address table andbad block table.

The address table shows the correspondence between a logical address andphysical address. The logical address is used when the host apparatus 2accesses the memory card 1. The physical address indicates a physicalposition in the memory cell array 30 of the NAND flash memory 11. Thelogical address and physical address do not always match. Therefore, theMPU 22 holds the correspondence between the logical and physicaladdresses as the address table in the RAM 25. In this example of theaddress table shown in FIG. 6, an entry to which each physical blockaddress is allocated holds a corresponding logical block address. In thecase shown in FIG. 6, logical block addresses “0”, “1”, and “5” are heldin this order from the first entry, so physical block addresses “0”,“1”, and “2” respectively correspond to the logical block addresses “0”,“1”, and “5”.

The bad block table will be explained next. If a defect or the likemakes a certain memory block unusable in the NAND flash memory 11, theMPU 22 must grasp this memory block. Therefore, the MPU 22 holds anunusable memory block as a bad block table in the RAM 25. In the exampleshown in FIG. 6, the use of memory blocks BLK3, BLK12, and BLK48 isinhibited.

These pieces of system information are temporarily stored in the RAM 25,and written in the NAND flash memory 11 at a predetermined timing.

A data write method of the memory system described above will beexplained below with reference to FIG. 7. FIG. 7 is a flowchart showingthe processing of the card controller 12 when writing data.

When the card controller 12 starts a write operation (step S10), the MPU22 first checks whether data to be written is real data supplied fromthe host apparatus 2 or the system information held in the cardcontroller 12, for example, the RAM 25 (step S11). If the data is thesystem information (YES in step S12), the MPU 22 generates an address inthe row direction so as not to select the word lines WL0 and WL31 (stepS13). More specifically, the MPU 22 first generates a block address soas to select a certain memory block. The MPU 22 also generates a pageaddress to select a certain page. In this case, the MPU 22 generates apage address corresponding to not the word lines WL0 and WL31 but theword lines WL1 to WL30. Subsequently, the flash controller 23 generatesa row address on the basis of the block address and page addressgenerated by the MPU 22. In addition, the MPU 22 supplies a writeinstruction and the system information to the NAND flash memory 11 viathe flash controller 23, and the flash controller 23 supplies the rowaddress to the NAND flash memory 11, thereby writing the data (stepS14).

In the NAND flash memory 11, the row decoder 32 selects one of the wordlines WL1 to WL30 on the basis of the row address, and a write circuit(not shown) supplies the system information to each bit line.Consequently, the system information is written in the memory celltransistor MT connected to one of the word lines WL1 to WL30.

If the MPU 22 determines in step S12 that the data is not the systeminformation (NO in step S12), the MPU 22 performs a normal writeoperation. That is, the MPU 22 generates an address in the row directionto select one of the word lines WL0 to WL31 including the word lines WL0and WL31 (step S15). That is, the MPU 22 generates a page addresscorresponding to one of the word lines WL0 to WL31. After that, the datais written in step S14.

As described above, the memory system according to the first embodimentof the present invention achieves effect (1) below.

(1) The system reliability can improve (No. 1).

FIG. 8 is a circuit diagram of the memory block BLK of the flash memory11 according to this embodiment, and shows the way the systeminformation is written.

In the memory system according to this embodiment as shown in FIG. 8,the card controller 12 writes the system information in the memory celltransistors MT connected to the word lines WL1 to WL30, and does notwrite any system information in the memory cell transistors MT connectedto the word lines WL0 and WL31. In other words, when writing the systeminformation, the card controller 12 does not select the word lines WL0and WL31 adjacent to the select gate lines SGD and SGS, and selects theword lines WL1 to WL30 not adjacent to the select gate lines SGD andSGS.

In the conventional device, one of the word lines WL0 to WL31 isselected regardless of the type of data to be written. Accordingly, theword lines WL0 and WL31 adjacent to the select gate lines may beselected even when writing not only normal data supplied from the hostapparatus but also data such as the system information that is importantfor the system to operate. However, the regularity of the arrangement ofthe word lines WL breaks in regions where the select gate lines SGD andSGS are formed in the memory block BLK. From the viewpoint of thesemiconductor device fabrication process, therefore, defects such as biterrors readily occur on the word lines WL adjacent to the select gatelines SGD and SGS. Consequently, the system reliability deteriorates ifdata requiring reliability (i.e., data such as the system informationrequired for the system to operate) is written in the memory celltransistors MT connected to the word lines adjacent to the select gatelines SGD and SGS.

When writing data requiring reliability, however, this embodimentselects word lines except for the word lines that readily cause defects,thereby preventing the loss of the data. As a consequence, thereliability of the memory system can improve.

Second Embodiment

A memory controller according to the second embodiment of the presentinvention will be explained below. When writing data requiringreliability in a multilevel NAND flash memory, this embodiment writesthe data in a binary mode when selecting word lines adjacent to selectgate lines SGD and SGS. Note that the configuration of a memory systemis the same as the first embodiment described above, so a repetitiveexplanation will be omitted. FIG. 9 is a graph showing the thresholddistribution of a memory cell transistor MT in a NAND flash memory 11according to this embodiment.

The NAND flash memory 11 according to this embodiment holds data havingtwo bits or more. This flash memory will also be referred to as amultilevel NAND flash memory hereinafter. In this embodiment, themultilevel NAND flash memory 11 can hold 2-bit data. A mode in which2-bit data is written in each memory cell transistor MT will be called aquaternary mode (or multilevel mode). A mode in which 1-bit data iswritten in each memory cell transistor MT will be called a binary mode.Referring to FIG. 9, the abscissa indicates a threshold voltage Vth, andthe ordinate indicates the memory cell existence probability.

First, the quaternary mode will be explained. As shown in FIG. 9, thememory cell transistor can hold four data “11”, “01”, “10”, and “00” inascending order of a threshold voltage Vth. The threshold voltage Vth ofa memory cell transistor holding the data “11” is Vth<0V. The thresholdvoltage Vth of a memory cell transistor holding the data “01” is0V<Vth<Vth1. The threshold voltage Vth of a memory cell transistorholding the data “10” is Vth1<Vth<Vth2. The threshold voltage Vth of amemory cell transistor holding the data “00” is Vth2<Vth<Vth3.

Next, the binary mode will be explained. As shown in FIG. 9, the memorycell transistor can hold two data “1” and “0” in ascending order of thethreshold voltage Vth. The threshold voltage Vth of a memory celltransistor holding the data “1” is Vth<0V. The threshold voltage Vth ofa memory cell transistor holding the data “0” is Vth1<Vth<Vth2. That is,the data “1” has a threshold voltage equal to that of the data “11” inthe quaternary mode, and the data “0” has a threshold voltage equal tothat of the data “10” in the quaternary mode.

In other words, the binary mode is an operation mode using only thelower bit of the 2-bit data in the quaternary mode. A card controller 12controls whether to write data in the memory cell transistor in thebinary mode or quaternary mode.

Data is written from the lower bit. Assuming that an erased state is“11” (“--”, - means indefinite), the memory cell transistor MT holds“11” (“−1”) or “10” (“−0”) when the lower bit is written. Data write inthe binary mode is complete in this state. When writing data in thequaternary mode, the upper bit is then written. As a consequence, thememory cell transistor MT holding “11” (“−1”) holds “11” or “01”, andthe memory cell transistor MT holding “10” (“−0”) holds “10” or “00”.

A data write method of the memory system described above will beexplained below with reference to FIG. 10. FIG. 10 is a flowchartshowing the processing of the card controller 12 when writing data.

Processing up to step S11 is the same as in the first embodiment. Ifdata to be written is not the system information (NO in step S12), anMPU 22 of the card controller 12 writes the data in any of word linesWL0 to WL31 in the multilevel mode (in this embodiment, the quaternarymode) (step S20). If the data is the system information (YES in stepS12) and the word line WL0 or WL31 is to be selected (YES in step S21),the MPU 22 of the card controller 12 writes the data in the binary mode(step S22). On the other hand, if the word lines WL0 and WL31 are not tobe selected (NO in step S21), the MPU 22 writes the data in themultilevel mode (step S20).

As described above, the memory system according to the second embodimentof the present invention achieves effect (2) below.

(2) The system reliability can improve (No. 2).

FIG. 11 is a circuit diagram of a memory block BLK of the flash memory11 according to this embodiment, and shows the way the systeminformation is written.

As shown in FIG. 11, when writing the system information in the NANDflash memory 11, the card controller 12 writes the system information inthe multilevel mode when selecting the word lines WL1 to WL30, andwrites the system information in the binary mode when selecting the wordlines WL0 and WL31. In other words, when writing the system information,the card controller 12 uses the binary mode when selecting the wordlines WL0 and WL31 adjacent to the select gate lines SGD and SGS, anduses the multilevel mode when selecting the word lines WL1 to WL30 notadjacent to the select gate lines SGD and SGS.

As explained with reference to FIG. 9, the threshold voltage differencebetween data is larger in the binary mode than in the quaternary mode.Also, the stress given to the memory cell transistor MT by a writeoperation is smaller in the binary mode than in the quaternary mode.When written in the binary mode, therefore, the system information canbe accurately held even when using the word lines WL0 and WL31 thatreadily cause bit errors. As a consequence, the reliability of thememory system can improve.

Note that this embodiment has explained that the binary mode is theoperation mode using the lower bit in the quaternary mode. However, thebinary mode may also be an operation mode using the upper bit in thequaternary mode. It is possible to selectively use the two operationmodes in accordance with, e.g., the data holding characteristic orthreshold setting method.

The above embodiment has explained the case that the binary mode isapplied only when writing the system information in the word lines WL0and WL31. However, the binary mode can also be applied to write normaldata supplied from a host apparatus 2 into the word lines WL0 and WL31.FIG. 12 is a flowchart showing the processing of the card controller 12in this case. As shown in FIG. 12, the sequence of this processing isobtained by omitting steps S11 and S12 in FIG. 10. That is, the cardcontroller 12 first determines whether to select the word line WL0 orWL31. Then, regardless of the type of data, the card controller 12writes the data in the binary mode (step S22) if the word line WL0 orWL31 is to be selected (YES in step S21), or writes the data in thequaternary mode if the word lines WL0 and WL31 are not to be selected(NO in step S21). This method can assure the reliability of normal dataas well.

Third Embodiment

A memory controller according to the third embodiment of the presentinvention will be explained below. This embodiment takes account of bitlines as well in the first embodiment described previously. Theconfiguration of a memory system is almost the same as the firstembodiment except that a NAND flash memory 11 has a column decoder forselecting bit lines. FIG. 13 is a flowchart showing the processing of acard controller 12 when writing data.

Processing up to step S11 is the same as in the first embodiment. Ifdata is the system information (YES in step S12), an MPU 22 generates anaddress in the row direction so as not to select word lines WL0 and WL31(step S13). Subsequently, the MPU 22 generates an address in the columndirection so as not to select bit lines BL0 and BLm (step S30). That is,the MPU 22 selects a column in a memory block BLK selected by a blockaddress so as not to select bit lines positioned at the end portions;the MPU 22 generates a column address so as to select bit lines BL1 toBL(m−1). A row decoder 32 of the flash memory 11 receives the rowaddress generated in step S13, and the column decoder receives thecolumn address generated in step S30. The MPU 22 writes the systeminformation in a memory cell transistor connected to a word lineselected by the row decoder 32 and a bit line selected by the columndecoder (step S14).

If the MPU 22 determines in step S12 that the data is not the systeminformation (NO in step S12), the MPU 22 performs a normal writeoperation. That is, the MPU 22 generates an address in the row directionso as to select one of the word line WL0, word lines WL1 to WL30, andthe word line WL31 (step S15). That is, the MPU 22 generates a pageaddress corresponding to one of the word lines WL0 to WL31.Subsequently, the MPU 22 generates a column address so as to select oneof the bit lines BL0 to BLm including the bit lines BL0 and BLm (stepS31). After that, the MPU 22 writes the data in step S14.

As described above, the memory system according to the third embodimentof the present invention achieves effect (3) below in addition to effect(1) explained in the first embodiment.

(3) The system reliability can improve (No. 3).

FIG. 14 is a circuit diagram of the memory block BLK of the flash memory11 according to this embodiment, and shows the way the systeminformation is written.

In the memory system according to this embodiment as shown in FIG. 14,the card controller 12 writes the system information in memory celltransistors MT connected to the word lines WL1 to WL30 and bit lines BL1to BL(m−1), and does not write any system information in memory celltransistors MT connected to the word lines WL0 and WL31 and bit linesBL0 and BLm. In other words, when writing the system information, thecard controller 12 does not select the word lines WL0 and WL31 adjacentto select gate lines SGD and SGS, and selects the word lines WL1 to WL30not adjacent to the select gate lines SGD and SGS. In addition, the cardcontroller 12 does not select the bit lines BL0 and BLm positioned atthe end portions in the memory block BLK, and selects the bit lines BL1to BL(m−1) not positioned at these end portions.

Similar to the word lines, the regularity of the arrangement of the bitlines BL breaks in a region at each end portion in the direction of theword lines in the memory block BLK. That is, in this region, another bitline exists on only one adjacent side in the direction of the wordlines. Accordingly, from the viewpoint of the semiconductor devicefabrication process, defects such as bit errors readily occur in thisregion.

By contrast, when writing data requiring reliability, this embodimentselects a bit line except for bit lines that readily cause defects. Thismakes it possible to improve the reliability of the memory system.

Fourth Embodiment

A memory controller according to the fourth embodiment of the presentinvention will be explained below. This embodiment is a combination ofthe second and third embodiments described above. That is, when writingdata requiring reliability in a multilevel NAND flash memory, the datais written in a binary mode when selecting word lines adjacent to selectgate lines SGD and SGS and bit lines positioned at the end portions of amemory block BLK. FIG. 15 is a flowchart showing the processing of acard controller 12 when writing data.

Processing up to step S21 is the same as in the second embodiment. Ifword lines WL0 and WL31 are selected (YES in step S21), the systeminformation is written in the binary mode in the same manner as in thesecond embodiment (step S22). If the word lines WL0 and WL31 are notselected (NO in step S21) and bit lines BL0 and BLm are selected (YES instep S40), the system information is similarly written in the binarymode (step S22). If the word lines WL0 and WL31 are not selected (NO instep S21) and the bit lines BL0 and BLm are not selected either (NO instep S40), the system information is written in a multilevel mode (stepS20).

As described above, the memory system according to the fourth embodimentof the present invention achieves effect (4) below in addition to effect(2) explained in the second embodiment.

(4) The system reliability can improve (No. 4).

FIG. 16 is a circuit diagram of the memory block BLK of a flash memory11 according to this embodiment, and shows the way the systeminformation is written.

In the memory system according to this embodiment as shown in FIG. 16,when writing the system information in the NAND flash memory 11, thecard controller 12 writes the system information in the multilevel modewhen selecting word lines WL1 to WL30 and bit lines BL1 to BL(m−1), andwrites the system information in the binary mode when selecting the wordlines WL0 and WL31 and bit lines BL0 and BLm. In other words, whenwriting the system information, the card controller 12 uses the binarymode when selecting the word lines WL0 and WL31 adjacent to the selectgate lines SGD and SGS and the bit lines BL0 and BLm at the memory blockend portions, and the multilevel mode when selecting the word lines WL1to WL30 not adjacent to the select gate lines SGD and SGS and the bitlines BL1 to BLm not at the memory block end portions.

As explained in the second embodiment, therefore, when written in thebinary mode, the system information can be accurately held even whenusing the word lines WL0 and WL31 and bit lines BL0 and BLm that readilycause bit errors. As a consequence, the reliability of the memory systemcan improve.

It is a matter of course that the binary mode may also be an operationmode using the upper bit in the quaternary mode in this embodiment aswell. Also, the binary mode can be applied to write normal data suppliedfrom a host apparatus 2 into the word lines WL0 and WL31 and bit linesBL0 and BLm.

Fifth Embodiment

A memory controller according to the fifth embodiment of the presentinvention will be explained below. This embodiment is directed to amethod of determining whether to apply the first to fourth embodimentsdescribed above. The configuration of a memory system is the same as thefirst to fourth embodiments, so a repetitive explanation will beomitted. FIG. 17 is a flowchart of a data write method of a cardcontroller 12.

As shown in FIG. 17, an MPU 22 starts a write operation (step S10),generates a block address (step S50), and checks the reliability of amemory block corresponding to the generated block address (step S52).The reliability herein mentioned relates to the data holdingcharacteristic. If the MPU 22 determines that the reliability is low(YES in step S52), the MPU 22 writes data by using the method accordingto one of the first to fourth embodiments described above (step S53). Ifthe MPU 22 determines that the reliability is not low (NO in step S52),the MPU 22 writes the data by a normal method (step S54). That is, theMPU 22 selects word lines and bit lines regardless of their positions.

Although the determination method in steps S51 and S52 can beappropriately selected, two examples will be explained below. FIG. 18 isa table (to be referred to as an error table hereinafter) showing therelationship between each of memory blocks BLK0 to BLKn and an ECC(Error Checking and Correcting) error occurrence ratio. The MPU 22counts ECC errors having occurred in the memory blocks BLK0 to BLKn,calculates occurrence ratios R0 to Rn, and holds them as an error tablein a RAM 25. The RAM 25 also holds an occurrence ratio threshold Rth. Instep S51, the MPU 22 reads out an occurrence ratio Ri (i is one of 0 ton) of the memory block corresponding to the generated block address andthe occurrence ratio threshold Rth, and determines that the reliabilityis low if Ri>Rth. For example, if a block address corresponding to thememory block BLK0 is generated, the MPU 22 reads out the occurrenceratio R0 and occurrence ratio threshold Rth from the RAM 25. If R0>Rth,the MPU 22 determines that the reliability is low because many ECCerrors have occurred in the memory block BLK0 (YES in step S52).

The other method will be explained with reference to FIGS. 19A and 19B.FIGS. 19A and 19B are block diagrams of a memory cell array 30, andillustrate the arrangement of the memory blocks BLK. As shown in FIGS.19A and 19B, the MPU 22 determines that memory blocks BLK (hatchedmemory blocks in FIGS. 19A and 19B) positioned at the end portions inthe memory cell array 30 have low reliability. More specifically, asshown in FIG. 19A, when memory blocks (memory blocks not hatched in FIG.19A) surrounded by other memory blocks are selected, the MPU 22determines that the reliability of the selected memory blocks is notlow. Alternatively, as shown in FIG. 19B, when memory blocks (memoryblocks not hatched in FIG. 19B) each having two opposing sidessandwiched between other memory blocks are selected, the MPU 22determines that the reliability of the selected memory blocks is notlow.

As described above, the memory system according to this embodimentachieves effect (5) below in addition to effects (1) to (4) explained inthe first to fourth embodiments.

(5) The memory cell array can be efficiently used.

This embodiment applies the write method explained in the first tofourth embodiments to only memory blocks BLK found to have lowreliability, and the conventional method to other memory blocks. Thismakes it possible to efficiently use word lines and bit lines to whichthe methods of the above embodiments need not be applied.

As described above, the memory systems according to the first to fifthembodiments of the present invention write data requiring reliability,e.g., the system information by avoiding word lines and bit lines thatoften cause bit errors. Accordingly, it is possible to improve thesystem information holding characteristic and reliability of the memorysystem.

Note that each of the above embodiments has explained the case that wordlines are selected by avoiding only the word lines WL0 and WL31. Asshown in a circuit diagram of FIG. 20, however, it is also possible toleave the two word lines WL0 and WL1 on the side of the select gate lineSGD and the two word lines WL30 and WL31 on the side of the select gateline SGS unselected, or write data in these word lines in the binarymode. It is a matter of course that the number of word lines not to beselected need not be two but may also be three or more and the number ofword lines not to be selected on the side of the select gate line SGDcan be different from that on the side of the select gate line SGS. Thisis of course similarly applicable to bit lines. That is, it is possibleto leave the bit lines BL0 and BL1 and the bit lines BL(m−1) and BLm atthe memory block end portions unselected, or write data in these bitlines in the binary mode. Also, the number of bit lines not to beselected need not be two but may also be three or more, and the numberof bit lines not to be selected on the side of the bit line BL0 can bedifferent from that on the side of the bit line BLm.

Furthermore, the present invention is also applicable to the case that adummy word line is formed between the select gate line SGD and word lineWL0 or/and between the select gate line SGS and word line WL31. FIG. 21is a circuit diagram of a NAND cell. As shown in FIG. 21, this NAND cellhas dummy transistors DT1 and DT2. The dummy transistor DT1 has a drainconnected to the source of the selection transistor ST1, and a sourceconnected to the drain of the memory cell transistor MT connected to theword line WL0. The dummy transistor DT2 has a source connected to thedrain of the selection transistor ST2, and a drain connected to thesource of the memory cell transistor MT connected to the word line WL31.The gates of the dummy transistors DT1 and DT2 are connected to dummyword lines. The dummy word lines are grounded so as not to be selected.Note that the dummy transistors DT1 and DT2 connected to the dummy wordlines have a negative threshold voltage, and are normally ON. That is,no row addresses are allocated to the dummy word lines; row addressesare allocated to only the word lines WL0 to WL31.

FIG. 22 shows another arrangement including dummy word lines. FIG. 22 isa circuit diagram of a NAND cell. As shown in FIG. 22, the arrangementof this NAND cell is the same as FIG. 21 except that the dummy wordlines are not grounded. In this arrangement shown in FIG. 22, the dummyword lines are also connected to the row decoder 32, but the row decoder32 does not select these dummy word lines. That is, row addresses areallocated to the dummy word lines as well, but the card controller 12generates a page address so as not to select the dummy word lines.

The first to fifth embodiments are also applicable to the arrangementsshown in FIGS. 21 and 22 to write the system information by avoiding theword lines WL0 and WL31 or in the binary mode. To avoid word lineshaving low reliability, however, when writing the system information, itis also possible to use a method that uses the word lines WL0 and WL31in the case shown in FIG. 21, and does not use the word lines WL0 andWL31 in the case shown in FIG. 22.

The first to fifth embodiments can also be applied to semiconductormemories other than the NAND flash memory. That is, the presentinvention is widely applicable to any semiconductor memory having anarrangement in which a plurality of bit lines are regularly arranged,and bit errors occur when the regularity breaks as in the NAND flashmemory. As an example, the present invention is also applicable to “a TCparallel unit series-connected ferroelectric memory” in which the twoterminals of a capacitor (C) are connected between the source and drainof a cell transistor (T) to form a unit cell, and a plurality of unitcells are connected in series. FIG. 23 is a view showing an example ofthe arrangement of the main part of this ferroelectric memory.

That is, FIG. 23 is a circuit diagram showing a portion of a memory cellarray of the TC parallel unit series-connected ferroelectric memory. Asshown in FIG. 23, this memory cell array includes cell blocks BLK andblock selection transistors BST. The cell block BLK includes a pluralityof series-connected memory cells MC. Referring to FIG. 23, the number ofmemory cells MC included in one memory block is eight. However, thenumber of memory cells MC is of course not limited to eight, and canalso be 16 or 32. The memory cell MC includes a MOS transistor T andferroelectric capacitor C. The ferroelectric capacitor C is a capacitorelement using a ferroelectric material as a capacitor insulating film.As this ferroelectric material, it is possible to use, e.g., leadzirconate titanate (Pb—Zr—Ti—O: PZT) or strontium-bismuth tantalate(Sr—Bi—Ta—O: SBT). The ferroelectric capacitor C has one electrodeconnected to the source of the cell transistor T, and the otherelectrode connected to the drain of the cell transistor T. The source ofthe cell transistor T is connected to the drain of the cell transistor Tof an adjacent memory cell MC on one side, and the drain of the celltransistor T is connected to the source of the cell transistor T of anadjacent memory cell MC on the other side. The gate electrodes of thecell transistors T included in the memory cells MC are connected to wordlines WL0 to WL7. The source of the cell transistor T of the memory cellMC positioned closest to the source and connected to the word line WL7is connected to a plate line PL. The drain of the cell transistor T ofthe memory cell MC positioned closest to the drain and connected to theword line WL0 is connected to a bit line BL via the block selectiontransistor BST. That is, the block selection transistor BST has a sourceconnected to the drain of the cell transistor T connected to the wordline WL0, and a drain connected to the bit line BL. Also, a blockselection signal line BS is connected to the gate of the block selectiontransistor BST.

In the above arrangement, the regularity of the word lines WL breaks ina portion where the word line WL0 and block selection signal line BS areadjacent to each other, and in a portion where the word line WL7 andplate line PL are connected. When writing data requiring reliability,therefore, a method that does not select the word lines WL0 and WL7 canbe applied.

Additional advantages and modifications will readily occur to thoseskilled in the art. Therefore, the invention in its broader aspects isnot limited to the specific details and representative embodiments shownand described herein. Accordingly, various modifications may be madewithout departing from the spirit or scope of the general inventiveconcept as defined by the appended claims and their equivalents.

1. A flash memory system comprising: a first memory which has at least aplurality of flash memory cells, each cell having a word line, connectedin series, a first selection transistor having a first select gate lineconnected to one end of the plurality of memory cells and a secondselection transistor having a second select gate line connected toanother end of the plurality of memory cells; and a memory controllerincluding: an interface configured to be connectable to an electricdevice and transfer first data to or from the first memory and a commandfrom the device; a second memory which temporarily holds second data;and a processor unit configured to control writing the first data in thefirst memory, reading the first data from the first memory, temporarilyholding the second data in the second memory, and writing, in the firstmemory, the second data held in the second memory, wherein when writingthe second data, the processor unit does not select the word linesadjacent to the first select gate line and the second select gate line,and selects the word line not adjacent to the first select gate line andthe second select gate line.
 2. The flash memory system according toclaim 1, wherein the first memory comprises: a memory cell groupincluding the plurality of memory cells connected in series with thefirst selection transistor and the second selection transistor; a bitline connected to a drain of the first selection transistor in each cellof the memory cell group; and a memory block including a plurality ofmemory cell groups, and wherein when writing the second data, theprocessor unit does not select the bit lines positioned at end portionsof the memory block, and selects the bit lines not positioned at the endportions of the memory block.
 3. The flash memory system according toclaim 2, wherein when writing the second data, the processor unit doesnot select the bit lines adjacent to the bit lines positioned at the endportions of the memory block either.
 4. The flash memory systemaccording to claim 1, wherein the second data is system informationincluding a correspondence between a logical address and a physicaladdress in the first memory, and defective memory cell information. 5.The flash memory system according to claim 1, wherein the first memorycomprises: a memory cell group including the plurality of memory cellsconnected in series with the first selection transistor and the secondselection transistor; a bit line connected to a drain of the firstselection transistor in each cell of the memory cell group; and a memoryblock including a plurality of memory cell groups, and wherein theprocessor unit checks reliability of the memory block corresponding to ablock address before writing the second data, and, if the reliabilitydoes not satisfy a standard value, does not select the word linesadjacent to the first select gate line and the second select gate line,and selects the word line not adjacent to the first select gate line andthe second select gate line, when writing the second data.
 6. The flashmemory system according to claim 5, wherein the processor unitcalculates a ECC error occurrence ratio which occurred in each memoryblock, and holds the occurrence ratio as an error table in the secondmemory, the second semiconductor memory holds an occurrence ratiothreshold, and when checking the reliability of the memory block, theprocessor unit reads out the ECC error occurrence ratio of the memoryblock corresponding to the block address and the occurrence ratiothreshold, and determines that the reliability does not satisfy thestandard value if the ECC error occurrence ratio is higher than theoccurrence ratio threshold.
 7. The flash memory system according toclaim 5, wherein when checking the reliability of the memory block, theprocessor unit determines that the reliability of the memory blockpositioned at an end portion in a memory cell array does not satisfy thestandard value.
 8. The flash memory system according to claim 1, whereinwhen writing the second data, the processor unit does not select theword lines adjacent to the word lines adjacent to the first select gateline and the second select gate line either.
 9. The flash memory systemaccording to claim 1 wherein the first memory further comprises: a firstdummy transistor having a current path whose two ends are connected tothe source of the first selection transistor and a drain of the memorycell; and a second dummy transistor having a current path whose two endsare connected to the drain of the second selection transistor and asource of the memory cell.
 10. The flash memory system according toclaim 9, wherein a first dummy word line and a second dummy word linerespectively connected to gates of the first dummy transistor and thesecond dummy transistor are grounded.
 11. The flash memory systemaccording to claim 1, wherein the first data including a user data. 12.The flash memory system according to claim 11, wherein the second dataincluding a system information.
 13. The flash memory system according toclaim 12, wherein the first data is a multi-value data more than 2 bits.14. The flash memory system according to claim 12, wherein the seconddata is a 1 bit data.
 15. The flash memory system according to claim 1,wherein when writing the first data without writing second data in thefirst memory, the processor unit configured to allow to select the wordlines adjacent respectively to the first select gate line or the secondselect gate line and write multi-value data to the selected cells.
 16. Aflash memory system including: a flash memory portion which writes datain a first memory including a plurality of memory cells, a firstselection transistor, a second selection transistor, a first select gateline, a second select gate line and a plurality of word lines, theplurality of memory cells having current paths connected in seriesbetween a source of the first selection transistor and a drain of thesecond selection transistor, each of the plurality of memory cellshaving a control gate and a charge storage layer and being configured tohold data having at least two bits, the first and second select gatelines respectively connected to gates of the first and second selectiontransistors, and the plurality of word lines respectively connected tothe control gates; and a memory control portion which comprises, aninterface configured to be connectable to an electric device andtransfer first data to or from the first memory and a command from thedevice; a second memory which temporarily holds second data; and aprocessor unit configured to control writing the first data in the firstmemory, reading the first data from the first memory, temporarilyholding the second data in the second memory, and writing, in the firstmemory, the second data held in the second memory, wherein when writingthe second data, the processor unit writes one-bit data in the memorycells connected to the word lines adjacent to the first select gate lineand the second select gate line, and writes the data having not lessthan two bits in the memory cell connected to the word line not adjacentto the first select gate line and the second select gate line.
 17. Theflash memory system according to claim 16 wherein even when writing thefirst data, the processor unit writes one-bit data in the memory cellsconnected to the word lines adjacent to the first select gate line andthe second select gate line, and writes the data having not less thantwo bits in the memory cell connected to the word line not adjacent tothe first select gate line and the second select gate line.
 18. Theflash memory system according to claim 16, wherein the second data issystem information including a correspondence between a logical addressand a physical address in the first memory, and defective memory cellinformation.
 19. The flash memory system according to claim 16, whereinthe first memory comprises: a memory cell group including the pluralityof memory cells connected in series with the first selection transistorand the second selection transistor; a bit line connected to a drain ofthe first selection transistor in each cell of the memory cell group;and a memory block including a plurality of memory cell groups, andwherein when writing the second data, the processor unit writes one-bitdata in the memory cells connected to the bit lines positioned at endportions of the memory block, and writes the data having not less thantwo bits in the memory cell connected to the bit line not positioned atthe end portions of the memory block.
 20. The flash memory systemaccording to claim 19, wherein when writing the second data, theprocessor unit writes one-bit data in the memory cells connected to thebit lines adjacent to the bit lines positioned at the end portions ofthe memory block.
 21. The flash memory system according to claim 16,wherein the first memory comprises: a memory cell group including theplurality of memory cells connected in series with the first selectiontransistor and the second selection transistor; a bit line connected toa drain of the first selection transistor in each cell of the memorycell group; and a memory block including a plurality of memory cellgroups, and wherein the processor unit checks reliability of the memoryblock corresponding to a block address before writing the second data,and, if the reliability does not satisfy a standard value, writes theone-bit data in the memory cells connected to the word lines adjacent tothe first select gate line and the second select gate line, and writesthe data having not less than two bits in the memory cell connected tothe word line not adjacent to the first select gate line and the secondselect gate line, when writing the second data.
 22. The flash memorysystem according to claim 21, wherein the processor unit calculates aECC error occurrence ratio which occurred in each memory block, andholds the occurrence ratio as an error table in the second memory, thesecond memory holds an occurrence ratio threshold, and when checking thereliability of the memory block, the processor unit reads out the ECCerror occurrence ratio of the memory block corresponding to the blockaddress and the occurrence ratio threshold, and determines that thereliability does not satisfy the standard value if the ECC erroroccurrence ratio is higher than the occurrence ratio threshold.
 23. Theflash memory system according to claim 16, wherein when writing thesecond data, the processor unit writes one-bit data in the memory cellsconnected to the word lines adjacent to the word lines adjacent to thefirst select gate line and the second select gate line.
 24. The flashmemory system according to claim 16, wherein the first memory furthercomprises: a first dummy transistor having a current path whose two endsare connected to the source of the first selection transistor and adrain of the memory cell; and a second dummy transistor having a currentpath whose two ends are connected to the drain of the second selectiontransistor and a source of the memory cell.
 25. The flash memory systemaccording to claim 24, wherein a first dummy word line and a seconddummy word line respectively connected to gates of the first dummytransistor and the second dummy transistor are grounded.